package nancal.mp.db.mysql.entity

import nbcp.base.db.annotation.Cn
import nbcp.base.db.annotation.DbEntityGroup
import nbcp.base.db.annotation.DbName
import nbcp.myoql.db.sql.base.BaseSqlMarkEntity
import java.time.LocalDateTime

/**
 * Created by yuxh on 2018/9/20
 */

@Cn("管理员用户信息")
@DbEntityGroup("admin")
//后台管理员
open class admin_user(
        @Cn("姓名")
        var name: String = "",      //这里的名称=自定义昵称
        @Cn("登录名")
        @DbName("login_name")
        var loginName: String = "",
        @Cn("手机号")
        var mobile: String = "",
        @Cn("电子邮件")
        var email: String = "",
        @Cn("备注")
        var remark: String = "",
        @Cn("是否是超级管理员")
        @DbName("is_admin")
        var isAdmin: Boolean = false, //是否是超级管理员

        @Cn("住址")
        var address: String = ""
) : BaseSqlMarkEntity()


@Cn("管理员登录信息")
@DbEntityGroup("admin")
//管理员登录信息
open class admin_login_user(
        @Cn("用户Id")
        @DbName("user_id")
        var userId: String = "",    //用户Id,唯一
        @Cn("登录名")
        @DbName("login_name")
        var loginName: String = "",
        @Cn("登录手机")
        var mobile: String = "",    //认证后更新
        @Cn("登录邮箱")
        var email: String = "",     //认证后更新

        @Cn("密码")
        var password: String = "",  // Md5Util.getBase64Md5(pwd)
        @Cn("最后登录时间")
        @DbName("last_login_at")
        var lastLoginAt: LocalDateTime = LocalDateTime.now(),

        @Cn("是否已锁定")
        @DbName("is_locked")
        var isLocked: Boolean = false,
        @Cn("锁定详情")
        @DbName("locked_remark")
        var lockedRemark: String = "",

        @Cn("连续错误登录次数")
        @DbName("error_login_times")
        var errorLoginTimes: Byte = 0
) : BaseSqlMarkEntity()





